#include <iostream>
#include<string>
using namespace std;

//int main()
//{
//    string str, ret;
//    cin >> str;
//    int i = 0;
//    while (i < str.size())
//    {
//        if (isdigit(str[i]))
//        {
//            string tmp;
//            while (isdigit(str[i]) && i < str.size())
//            {
//                tmp += str[i++];
//            }
//            if (tmp.size() > ret.size())
//                ret = tmp;
//        }
//        else
//            i++;
//    }
//    cout << ret;
//}

#include<vector>

//class Solution {
//public:
//    int vis[20][20] = { 0 };
//    int dirx[4] = { 1,0,-1,0 };
//    int diry[4] = { 0,1,0,-1 };
//
//    void bfs(int x, int y, vector<vector<char>>& grid, vector<vector<char>>& vis)
//    {
//        for (int i = 0; i < 4; i++)
//        {
//            int nx = x + dirx[i], ny = y + diry[i];
//            if (nx >= 0 && nx < grid.size() && ny >= 0 && ny < grid[0].size()
//                && vis[nx][ny] == 0 && grid[nx][ny] == '1')
//            {
//                vis[nx][ny] = 1;
//                bfs(nx, ny, grid,vis);
//            }
//        }
//    }
//
//    int solve(vector<vector<char>>& grid)
//    {
//        int cnt = 0;
//        vector<vector<char>> vis = grid;
//        for (int i = 0; i < vis.size(); i++)
//        {
//            for (int j = 0; j < vis[i].size(); j++)
//            {
//                vis[i][j] = 0;
//            }
//        }
//
//        for (int i = 0; i < grid.size(); i++)
//        {
//            for (int j = 0; j < grid[0].size(); j++)
//            {
//                if (vis[i][j] == 0 && grid[i][j] == '1')
//                {
//                    cnt++;
//                    bfs(i, j, grid,vis);
//                }
//            }
//        }
//        return cnt;
//    }
//};

#include <iostream>
#include <algorithm>
#include <vector>
using namespace std;

//int flag = 0;
//
//bool isthree(vector<int>& path)
//{
//    sort(path.begin(), path.end());
//    return path[0] + path[1] > path[2];
//}
//
//void dfs(int deep, int* arr, int* vis, vector<int>& pathi)
//{
//    if (deep == 3)
//    {
//        vector<int> pathi2;
//        int i = 0, index = 0;
//        while (i < 6 && pathi.size() <= 3 && index < 3)
//        {
//            if (pathi[index] != i)
//            {
//                pathi2.push_back(i);
//            }
//            else
//                index++;
//
//            i++;
//        }
//
//        while (i < 6)
//        {
//            pathi2.push_back(i++);
//        }
//
//        for(int i=0;i<3;i++)
//        {
//            pathi[i] = arr[pathi[i]];
//            pathi2[i] = arr[pathi2[i]];
//        }
//
//        if (isthree(pathi) && isthree(pathi2))
//            flag = 1;
//        return;
//    }
//
//    for (int i = 0; i < 6; i++)
//    {
//        if (vis[i] == 0)
//        {
//            pathi.push_back(i);
//            vis[i] = 1;
//            dfs(deep + 1, arr, vis, pathi);
//            pathi.pop_back();
//            vis[i] = 0;
//
//            if (flag)
//                return;
//        }
//    }
//}
//
//int main() {
//    
//    int n;
//    cin >> n;
//    while (n--)
//    {
//        flag = 0;
//        int arr[6];
//        for (int i = 0; i < 6; i++)
//        {
//            cin >> arr[i];
//        }
//        int vis[6] = { 0 };
//        vector<int> pathi;
//        dfs(0, arr, vis, pathi);
//        if (flag)
//            cout << "Yes" << endl;
//        else
//            cout << "No" << endl;
//    }
//}


